# 使用Node.js官方镜像作为基础镜像
FROM node:18.20.4 AS build

# 设置工作目录
WORKDIR /app

# 复制package.json文件和package-lock.json文件
COPY package*.json ./
COPY docs ./docs

RUN npm config set registry=https://registry.npmmirror.com

# 安装项目依赖
RUN npm install

# 构建VitePress静态站点
# 构建VitePress应用
RUN npm run build

# 使用轻量级web服务器提供静态文件
FROM nginx:alpine

# 将构建的文件复制到nginx的服务目录
# .vitepress/config.js 配置项 base: '/' 使用
# COPY --from=build /app/docs/.vitepress/dist /usr/share/nginx/html
# .vitepress/config.js 配置项 base: '/vue-next-admin-doc-preview' 使用，默认
COPY --from=build /app/docs/.vitepress/dist /usr/share/nginx/html/vue-next-admin-doc-preview

# 暴露nginx运行的端口
EXPOSE 80

# 启动nginx服务器
CMD ["nginx", "-g", "daemon off;"]